package com.kameiqi.erp.domain.model;
import cn.qqxkj.core.common.base.BaseModel;
import cn.qqxkj.core.annotation.agile.Page;
import cn.qqxkj.core.annotation.agile.PageField;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.util.Date;
import java.math.BigInteger;
import java.lang.String;

/**
 * 单据子表实体类
 * @author 小六子
 * @date 2022-04-23 15:17:32
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Table(name = "jsh_depot_item")
@Entity
@Page(cover = true)
@ApiModel("单据子表")
public class DepotItem extends BaseModel{
    /** 表头Id */
    @ApiModelProperty(value="表头Id")
    @Column(nullable=false)
    @PageField(required=true)
    private Long headerId;

    /** 商品Id */
    @ApiModelProperty(value="商品Id")
    @Column(nullable=false)
    @PageField(required=true)
    private Long materialId;

    /** 商品扩展id */
    @ApiModelProperty(value="商品扩展id")
    private Long materialExtendId;

    /** 商品计量单位 */
    @ApiModelProperty(value="商品计量单位")
    private String materialUnit;

    /** 多属性 */
    @ApiModelProperty(value="多属性")
    private String sku;

    /** 数量 */
    @ApiModelProperty(value="数量")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal operNumber;

    /** 基础数量，如kg、瓶 */
    @ApiModelProperty(value="基础数量",notes="基础数量，如kg、瓶")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal basicNumber;

    /** 单价 */
    @ApiModelProperty(value="单价")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal unitPrice;

    /** 含税单价 */
    @ApiModelProperty(value="含税单价")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal taxUnitPrice;

    /** 金额 */
    @ApiModelProperty(value="金额")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal allPrice;

    /** 备注 */
    @ApiModelProperty(value="备注")
    private String remark;

    /** 仓库 */
    @ApiModelProperty(value="仓库")
    private Long depotId;

    /** 调拨时，对方仓库Id */
    @ApiModelProperty(value="调拨时",notes="调拨时，对方仓库Id")
    private Long anotherDepotId;

    /** 税率 */
    @ApiModelProperty(value="税率")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal taxRate;

    /** 税额 */
    @ApiModelProperty(value="税额")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal taxMoney;

    /** 价税合计 */
    @ApiModelProperty(value="价税合计")
    @Column(scale=6)
    @PageField(dataScale=6)
    private BigDecimal taxLastMoney;

    /** 商品类型 */
    @ApiModelProperty(value="商品类型")
    private String materialType;

    /** 序列号列表 */
    @ApiModelProperty(value="序列号列表")
    private String snList;

    /** 批号 */
    @ApiModelProperty(value="批号")
    private String batchNumber;

    /** 有效日期 */
    @ApiModelProperty(value="有效日期")
    private Date expirationDate;

    /** 租户id */
    @ApiModelProperty(value="租户id")
    private Long tenantId;

    /** 删除标记，0未删除，1删除 */
    @ApiModelProperty(value="删除标记",notes="删除标记，0未删除，1删除")
    private String deleteFlag;

}
